package com.wangp.springbootsource.util;

/**
 * <pre>
 * classname ColorPrintUtil
 * description
 * </pre>
 *
 * @author wangp
 * @date 2020/9/19 14:33
 **/
public class ColorPrintUtil {

    private static void print(String msg) {
        System.out.println(msg);
    }

    public static void deepWhitePrint(String msg) {
        msg = "\u001b[30m" + msg;
        print(msg);
    }

    public static void redPrint(String msg) {
        msg = "\u001b[31m" + msg;
        print(msg);
    }

    public static void lightGreenPrint(String msg) {
        msg = "\u001b[32m" + msg;
        print(msg);
    }

    public static void yellowPrint(String msg) {
        msg = "\u001b[33m" + msg;
        print(msg);
    }

    public static void bluePrint(String msg) {
        msg = "\u001b[34m" + msg;
        print(msg);
    }

    public static void purplePrint(String msg) {
        msg = "\u001b[35m" + msg;
        print(msg);
    }

    public static void indigoPrint(String msg) {
        msg = "\u001b[36m" + msg;
        print(msg);
    }


    public static void whiteCoverPrint(String msg) {
        msg = "\u001b[40m" + msg;
        print(msg);
    }

    public static void redCoverPrint(String msg) {
        msg = "\u001b[41m" + msg;
        print(msg);
    }

    public static void greenCoverPrint(String msg) {
        msg = "\u001b[42m" + msg;
        print(msg);
    }

    public static void yellowCoverPrint(String msg) {
        msg = "\u001b[43m" + msg;
        print(msg);
    }

    public static void blueCoverPrint(String msg) {
        msg = "\u001b[44m" + msg;
        print(msg);
    }

    public static void purpleCoverPrint(String msg) {
        msg = "\u001b[45m" + msg;
        print(msg);
    }

    public static void indigoCoverPrint(String msg) {
        msg = "\u001b[46m" + msg;
        print(msg);
    }

    public static void grayCoverPrint(String msg) {
        msg = "\u001b[47m" + msg;
        print(msg);
    }

    public static void cancelColorPrint(String msg) {
        msg = "\u001b[0m" + msg;
        print(msg);
    }

    public static final String YELLOW = "\u001b[33;1m";

    public static void main(String[] args) {
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                int code = i * 16 + j;
                System.out.printf("\u001b[38;5;%dm%-4d", code, code);
            }
            System.out.println("\u001b[0m");
        }
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                int code = i * 16 + j;
                System.out.printf("\u001b[48;5;%dm%-4d", code, code);
            }
            System.out.println("\u001b[0m");
        }
    }
}
